package com.tanhua.dubbo.api.mongo;

import com.tanhua.domain.mongo.Publish;
import com.tanhua.domain.vo.PageResult;

import java.util.List;

public interface PublishApi {

    /**
     * 发布动态
     */
    String save(Publish publish);

    /**
     * 查询好友动态
     *  分页查询：
     *    page，size，userId
     */
    PageResult findAllByTimeline(int page, int size, Long userId);

    /**
     * 查询推荐动态
     *   page，size，userId
     */
    PageResult findAllByRecommend(int page,int size,Long userId);


    /**
     * 查询个人动态（作业）
     *   page，size，userId
     */
    PageResult findAllByAlbum(Integer page, Integer pagesize, Long userId);

    //根据id查询
    Publish findById(String publishId);

    //查询动态列表
    PageResult findAll(int page, int pagesize, Long uid, Integer publishState);

    //根据动态id，更新状态
    void updateState(String id, Integer state);

    //根据pid列表，查询所有的动态
    List<Publish> findByPids(List<Long> pidList);
}
